const DTYPE W_imag[]={-0.00000000000000000000,
-0.00613588467240333557,-0.01227153837680816650,-0.01840673014521598816,-0.02454122900962829590,-0.03067480400204658508,-0.03680722415447235107,-0.04293825849890708923,-0.04906767606735229492,-0.05519524589180946350,-0.06132073700428009033,-0.06744392216205596924,-0.07356456667184829712,-0.07968243956565856934,-0.08579730987548828125,-0.09190895408391952515,-0.09801714122295379639,
-0.10412163287401199341,-0.11022220551967620850,-0.11631862819194793701,-0.12241067737340927124,-0.12849810719490051270,-0.13458070158958435059,-0.14065824449062347412,-0.14673046767711639404,-0.15279719233512878418,-0.15885815024375915527,-0.16491311788558959961,-0.17096188664436340332,-0.17700421810150146484,-0.18303988873958587646,-0.18906866014003753662,-0.19509032368659973145,
-0.20110464096069335938,-0.20711137354373931885,-0.21311031281948089600,-0.21910123527050018311,-0.22508391737937927246,-0.23105810582637786865,-0.23702360689640045166,-0.24298018217086791992,-0.24892760813236236572,-0.25486564636230468750,-0.26079410314559936523,-0.26671275496482849121,-0.27262136340141296387,-0.27851969003677368164,-0.28440752625465393066,-0.29028466343879699707,
-0.29615089297294616699,-0.30200594663619995117,-0.30784964561462402344,-0.31368175148963928223,-0.31950202584266662598,-0.32531028985977172852,-0.33110630512237548828,-0.33688986301422119141,-0.34266072511672973633,-0.34841868281364440918,-0.35416352748870849609,-0.35989505052566528320,-0.36561298370361328125,-0.37131720781326293945,-0.37700742483139038086,-0.38268342614173889160,
-0.38834503293037414551,-0.39399203658103942871,-0.39962419867515563965,-0.40524131059646606445,-0.41084316372871398926,-0.41642954945564270020,-0.42200025916099548340,-0.42755508422851562500,-0.43309381604194641113,-0.43861624598503112793,-0.44412213563919067383,-0.44961133599281311035,-0.45508357882499694824,-0.46053871512413024902,-0.46597650647163391113,-0.47139674425125122070,
-0.47679921984672546387,-0.48218378424644470215,-0.48755016922950744629,-0.49289819598197937012,-0.49822765588760375977,-0.50353837013244628906,-0.50883013010025024414,-0.51410275697708129883,-0.51935601234436035156,-0.52458965778350830078,-0.52980363368988037109,-0.53499764204025268555,-0.54017144441604614258,-0.54532498121261596680,-0.55045795440673828125,-0.55557024478912353516,
-0.56066155433654785156,-0.56573182344436645508,-0.57078075408935546875,-0.57580816745758056641,-0.58081394433975219727,-0.58579784631729125977,-0.59075969457626342773,-0.59569931030273437500,-0.60061645507812500000,-0.60551106929779052734,-0.61038279533386230469,-0.61523157358169555664,-0.62005722522735595703,-0.62485951185226440430,-0.62963825464248657227,-0.63439327478408813477,
-0.63912445306777954102,-0.64383155107498168945,-0.64851438999176025391,-0.65317285060882568359,-0.65780669450759887695,-0.66241580247879028320,-0.66699993610382080078,-0.67155897617340087891,-0.67609268426895141602,-0.68060100078582763672,-0.68508368730545043945,-0.68954056501388549805,-0.69397145509719848633,-0.69837623834609985352,-0.70275473594665527344,-0.70710676908493041992,
-0.71143221855163574219,-0.71573084592819213867,-0.72000253200531005859,-0.72424709796905517578,-0.72846436500549316406,-0.73265427350997924805,-0.73681658506393432617,-0.74095112085342407227,-0.74505776166915893555,-0.74913638830184936523,-0.75318682193756103516,-0.75720882415771484375,-0.76120239496231079102,-0.76516723632812500000,-0.76910334825515747070,-0.77301043272018432617,
-0.77688848972320556641,-0.78073722124099731445,-0.78455656766891479492,-0.78834640979766845703,-0.79210656881332397461,-0.79583692550659179688,-0.79953724145889282227,-0.80320751667022705078,-0.80684757232666015625,-0.81045717000961303711,-0.81403630971908569336,-0.81758481264114379883,-0.82110249996185302734,-0.82458931207656860352,-0.82804507017135620117,-0.83146959543228149414,
-0.83486288785934448242,-0.83822470903396606445,-0.84155499935150146484,-0.84485357999801635742,-0.84812033176422119141,-0.85135519504547119141,-0.85455799102783203125,-0.85772860050201416016,-0.86086696386337280273,-0.86397284269332885742,-0.86704623699188232422,-0.87008696794509887695,-0.87309497594833374023,-0.87607008218765258789,-0.87901222705841064453,-0.88192129135131835938,
-0.88479709625244140625,-0.88763964176177978516,-0.89044874906539916992,-0.89322429895401000977,-0.89596623182296752930,-0.89867448806762695312,-0.90134882926940917969,-0.90398931503295898438,-0.90659570693969726562,-0.90916800498962402344,-0.91170603036880493164,-0.91420978307723999023,-0.91667908430099487305,-0.91911387443542480469,-0.92151403427124023438,-0.92387950420379638672,
-0.92621022462844848633,-0.92850607633590698242,-0.93076694011688232422,-0.93299281597137451172,-0.93518352508544921875,-0.93733900785446166992,-0.93945920467376708984,-0.94154405593872070312,-0.94359344244003295898,-0.94560730457305908203,-0.94758558273315429688,-0.94952815771102905273,-0.95143502950668334961,-0.95330601930618286133,-0.95514118671417236328,-0.95694035291671752930,
-0.95870345830917358398,-0.96043050289154052734,-0.96212142705917358398,-0.96377605199813842773,-0.96539443731307983398,-0.96697646379470825195,-0.96852207183837890625,-0.97003126144409179688,-0.97150391340255737305,-0.97293996810913085938,-0.97433936595916748047,-0.97570210695266723633,-0.97702813148498535156,-0.97831737995147705078,-0.97956979274749755859,-0.98078525066375732422,
-0.98196387290954589844,-0.98310548067092895508,-0.98421007394790649414,-0.98527765274047851562,-0.98630809783935546875,-0.98730140924453735352,-0.98825758695602416992,-0.98917651176452636719,-0.99005818367004394531,-0.99090266227722167969,-0.99170976877212524414,-0.99247956275939941406,-0.99321192502975463867,-0.99390697479248046875,-0.99456459283828735352,-0.99518471956253051758,
-0.99576741456985473633,-0.99631261825561523438,-0.99682027101516723633,-0.99729043245315551758,-0.99772304296493530273,-0.99811810255050659180,-0.99847555160522460938,-0.99879544973373413086,-0.99907773733139038086,-0.99932235479354858398,-0.99952942132949829102,-0.99969881772994995117,-0.99983060359954833984,-0.99992471933364868164,-0.99998116493225097656,-1.00000000000000000000,
-0.99998116493225097656,-0.99992471933364868164,-0.99983060359954833984,-0.99969881772994995117,-0.99952942132949829102,-0.99932235479354858398,-0.99907773733139038086,-0.99879544973373413086,-0.99847555160522460938,-0.99811810255050659180,-0.99772304296493530273,-0.99729043245315551758,-0.99682027101516723633,-0.99631261825561523438,-0.99576741456985473633,-0.99518471956253051758,
-0.99456459283828735352,-0.99390697479248046875,-0.99321192502975463867,-0.99247956275939941406,-0.99170976877212524414,-0.99090266227722167969,-0.99005818367004394531,-0.98917651176452636719,-0.98825758695602416992,-0.98730140924453735352,-0.98630809783935546875,-0.98527765274047851562,-0.98421007394790649414,-0.98310548067092895508,-0.98196387290954589844,-0.98078525066375732422,
-0.97956979274749755859,-0.97831737995147705078,-0.97702813148498535156,-0.97570210695266723633,-0.97433936595916748047,-0.97293996810913085938,-0.97150391340255737305,-0.97003126144409179688,-0.96852207183837890625,-0.96697646379470825195,-0.96539443731307983398,-0.96377605199813842773,-0.96212142705917358398,-0.96043050289154052734,-0.95870345830917358398,-0.95694035291671752930,
-0.95514118671417236328,-0.95330601930618286133,-0.95143502950668334961,-0.94952815771102905273,-0.94758558273315429688,-0.94560730457305908203,-0.94359344244003295898,-0.94154405593872070312,-0.93945920467376708984,-0.93733900785446166992,-0.93518352508544921875,-0.93299281597137451172,-0.93076694011688232422,-0.92850607633590698242,-0.92621022462844848633,-0.92387950420379638672,
-0.92151403427124023438,-0.91911387443542480469,-0.91667908430099487305,-0.91420978307723999023,-0.91170603036880493164,-0.90916800498962402344,-0.90659570693969726562,-0.90398931503295898438,-0.90134882926940917969,-0.89867448806762695312,-0.89596623182296752930,-0.89322429895401000977,-0.89044874906539916992,-0.88763964176177978516,-0.88479709625244140625,-0.88192129135131835938,
-0.87901222705841064453,-0.87607008218765258789,-0.87309497594833374023,-0.87008696794509887695,-0.86704623699188232422,-0.86397284269332885742,-0.86086696386337280273,-0.85772860050201416016,-0.85455799102783203125,-0.85135519504547119141,-0.84812033176422119141,-0.84485357999801635742,-0.84155499935150146484,-0.83822470903396606445,-0.83486288785934448242,-0.83146959543228149414,
-0.82804507017135620117,-0.82458931207656860352,-0.82110249996185302734,-0.81758481264114379883,-0.81403630971908569336,-0.81045717000961303711,-0.80684757232666015625,-0.80320751667022705078,-0.79953724145889282227,-0.79583692550659179688,-0.79210656881332397461,-0.78834640979766845703,-0.78455656766891479492,-0.78073722124099731445,-0.77688848972320556641,-0.77301043272018432617,
-0.76910334825515747070,-0.76516723632812500000,-0.76120239496231079102,-0.75720882415771484375,-0.75318682193756103516,-0.74913638830184936523,-0.74505776166915893555,-0.74095112085342407227,-0.73681658506393432617,-0.73265427350997924805,-0.72846436500549316406,-0.72424709796905517578,-0.72000253200531005859,-0.71573084592819213867,-0.71143221855163574219,-0.70710676908493041992,
-0.70275473594665527344,-0.69837623834609985352,-0.69397145509719848633,-0.68954056501388549805,-0.68508368730545043945,-0.68060100078582763672,-0.67609268426895141602,-0.67155897617340087891,-0.66699993610382080078,-0.66241580247879028320,-0.65780669450759887695,-0.65317285060882568359,-0.64851438999176025391,-0.64383155107498168945,-0.63912445306777954102,-0.63439327478408813477,
-0.62963825464248657227,-0.62485951185226440430,-0.62005722522735595703,-0.61523157358169555664,-0.61038279533386230469,-0.60551106929779052734,-0.60061645507812500000,-0.59569931030273437500,-0.59075969457626342773,-0.58579784631729125977,-0.58081394433975219727,-0.57580816745758056641,-0.57078075408935546875,-0.56573182344436645508,-0.56066155433654785156,-0.55557024478912353516,
-0.55045795440673828125,-0.54532498121261596680,-0.54017144441604614258,-0.53499764204025268555,-0.52980363368988037109,-0.52458965778350830078,-0.51935601234436035156,-0.51410275697708129883,-0.50883013010025024414,-0.50353837013244628906,-0.49822765588760375977,-0.49289819598197937012,-0.48755016922950744629,-0.48218378424644470215,-0.47679921984672546387,-0.47139674425125122070,
-0.46597650647163391113,-0.46053871512413024902,-0.45508357882499694824,-0.44961133599281311035,-0.44412213563919067383,-0.43861624598503112793,-0.43309381604194641113,-0.42755508422851562500,-0.42200025916099548340,-0.41642954945564270020,-0.41084316372871398926,-0.40524131059646606445,-0.39962419867515563965,-0.39399203658103942871,-0.38834503293037414551,-0.38268342614173889160,
-0.37700742483139038086,-0.37131720781326293945,-0.36561298370361328125,-0.35989505052566528320,-0.35416352748870849609,-0.34841868281364440918,-0.34266072511672973633,-0.33688986301422119141,-0.33110630512237548828,-0.32531028985977172852,-0.31950202584266662598,-0.31368175148963928223,-0.30784964561462402344,-0.30200594663619995117,-0.29615089297294616699,-0.29028466343879699707,
-0.28440752625465393066,-0.27851969003677368164,-0.27262136340141296387,-0.26671275496482849121,-0.26079410314559936523,-0.25486564636230468750,-0.24892760813236236572,-0.24298018217086791992,-0.23702360689640045166,-0.23105810582637786865,-0.22508391737937927246,-0.21910123527050018311,-0.21311031281948089600,-0.20711137354373931885,-0.20110464096069335938,-0.19509032368659973145,
-0.18906866014003753662,-0.18303988873958587646,-0.17700421810150146484,-0.17096188664436340332,-0.16491311788558959961,-0.15885815024375915527,-0.15279719233512878418,-0.14673046767711639404,-0.14065824449062347412,-0.13458070158958435059,-0.12849810719490051270,-0.12241067737340927124,-0.11631862819194793701,-0.11022220551967620850,-0.10412163287401199341,-0.09801714122295379639,
-0.09190895408391952515,-0.08579730987548828125,-0.07968243956565856934,-0.07356456667184829712,-0.06744392216205596924,-0.06132073700428009033,-0.05519524589180946350,-0.04906767606735229492,-0.04293825849890708923,-0.03680722415447235107,-0.03067480400204658508,-0.02454122900962829590,-0.01840673014521598816,-0.01227153837680816650,-0.00613588467240333557,};
